package com.api.tiny.mirror.service.product;

import com.api.tiny.mirror.service.product.constant.ProductApiConstants;
import com.api.tiny.mirror.service.product.response.ShoppingAppDetailVO;
import com.api.tiny.mirror.service.product.response.ShoppingAppVO;
import com.tiny.mirror.basic.web.dto.response.BasePageResponse;
import com.tiny.mirror.basic.web.dto.response.BaseResponse;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @Author: lanpai
 * @Description:
 * @Date: Create in 2022/10/17
 */
@Validated
@Tag(name = "购物接口", description = "购物接口")
public interface ShoppingApiService {

  @Operation(summary = "购物列表查询")
  @GetMapping(
      value = ProductApiConstants.SHOPPING_API_PREFIX + "/list",
      produces = MediaType.APPLICATION_JSON_VALUE
  )
  BasePageResponse<ShoppingAppVO> getAppList();

  @Operation(summary = "购物查询")
  @GetMapping(
      value = ProductApiConstants.SHOPPING_API_PREFIX + "/detail",
      produces = MediaType.APPLICATION_JSON_VALUE
  )
  BaseResponse<ShoppingAppDetailVO> getApp(@RequestParam(value = "id") Long id);
}
